an olmv1 claude plugin for managing clusterextensions #76
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
What this PR does / why we need it:
OLM v1 is the future of operator lifecycle management in Kubernetes. This
plugin:
intelligent defaults
Technical Highlights
Automatic Webhook Support
When installing an operator that requires webhooks (like CloudNativePG,
cert-manager):
RBAC Preflight Integration
When PreflightPermissions feature gate is enabled:
Comprehensive Baseline RBAC
The /olmv1:install command creates ClusterRoles with permissions for:
Special notes for your reviewer:
webhook providers
(postgres-operator, cloudnative-pg)
Checklist:
Background:
OLM v1 Plugin for ClusterExtension Management
This PR introduces a new plugin for managing Kubernetes extensions using OLM
v1 (operator-controller), the next-generation operator lifecycle management
system that provides a simpler, more flexible approach to managing cluster
extensions.
What is OLM v1?
OLM v1 (operator-controller) is the successor to OLM v0, offering:
Subscriptions, CSVs, InstallPlans
RBAC permissions
lifecycle
extension types
Commands
Core Operations:
catalogs with version/channel information
setup, webhook support detection, and iterative permission fixes
indicators
CRDs, and webhook configuration
automatic cleanup of namespaces and RBAC resources
Update Management:
version ranges, or channels
Advanced Features:
permission issues
status
Key Features
Intelligent RBAC Management
updates ClusterRole
installation attempts
management rights
Webhook Support with Auto-Configuration
WebhookProviderOpenshiftServiceCA is enabled
webhook support
resources
commands
Comprehensive Health Monitoring
status
MutatingWebhookConfigurations
Safe Operations
removed
Example Workflow
Basic installation:
Search for an extension
/olmv1:search postgres
Install CloudNativePG (automatically handles webhooks and RBAC)
/olmv1:install cloudnative-pg
Check installation status
/olmv1:status cloudnative-pg
List all installed extensions
/olmv1:list
Version management:
Install specific version
/olmv1:install cert-manager --version ">=1.14.0 <2.0.0"
Upgrade to new version
/olmv1:upgrade cert-manager --version "1.15.0"
Troubleshooting:
Check status with feature gate information
/olmv1:status my-operator
Fix RBAC permissions automatically
/olmv1:fix-rbac my-operator
Uninstall and cleanup
/olmv1:uninstall my-operator
Catalog management:
List available catalogs
/olmv1:catalog-list
Add custom catalog
/olmv1:catalog-add my-catalog quay.io/my-org/my-catalog:latest
Critical Differences from OLM v0
Assisted-by: claude